﻿using System;
using System.Data;
using System.Collections.Generic;
using ZX.HIS.Common;
using ZX.HIS.Model;
using ZX.HIS.DALFactory;
using ZX.HIS.IDAL;
namespace ZX.HIS.BLL
{
    /// <summary>
    /// PrescritDrug
    /// </summary>
    public partial class PrescritDrug
    {
        private readonly IPrescritDrug dal = DataAccess.CreatePrescritDrug();
        public PrescritDrug()
        { }
        #region PrescritDrug自写方法
        /// <summary>
        /// 添加处方药品派生表
        /// </summary>
        /// <param name="PDList">数据集合</param>
        /// <param name="PrescritId">所属处方ID</param>
        /// <returns></returns>
        public bool PrescritDrugAdd(List<ZX.HIS.Model.PrescritDrug> PDList, int PrescritId)
        {
            return dal.PrescritDrugAdd(PDList, PrescritId);
        }
        /// <summary>
        /// 修改检查医疗项和就诊表派生表
        /// </summary>
        /// <param name="SDMIList">数据</param>
        /// <returns></returns>
        public bool PrescritDrugUpt(List<ZX.HIS.Model.PrescritDrug> PDList)
        {
            return dal.PrescritDrugUpt(PDList);
        }
        /// <summary>
        ///查询处方和药品派生表
        /// </summary>
        /// <param name="PrescritId">处方ID</param>
        /// <returns></returns>
        public List<ZX.HIS.Model.PrescritDrug> PrescritDrugList(int PrescritId)
        {
            return dal.PrescritDrugList(PrescritId);
        }
        #endregion

        #region  BasicMethod

        ///// <summary>
        ///// 得到最大ID
        ///// </summary>
        //public int GetMaxId()
        //{
        //    return dal.GetMaxId();
        //}

        ///// <summary>
        ///// 是否存在该记录
        ///// </summary>
        //public bool Exists(int PrescritDrugId)
        //{
        //    return dal.Exists(PrescritDrugId);
        //}

        ///// <summary>
        ///// 增加一条数据
        ///// </summary>
        //public int  Add(ZX.HIS.Model.PrescritDrug model)
        //{
        //    return dal.Add(model);
        //}

        ///// <summary>
        ///// 更新一条数据
        ///// </summary>
        //public bool Update(ZX.HIS.Model.PrescritDrug model)
        //{
        //    return dal.Update(model);
        //}

        ///// <summary>
        ///// 删除一条数据
        ///// </summary>
        //public bool Delete(int PrescritDrugId)
        //{

        //    return dal.Delete(PrescritDrugId);
        //}
        ///// <summary>
        ///// 删除一条数据
        ///// </summary>
        //public bool DeleteList(string PrescritDrugIdlist )
        //{
        //    return dal.DeleteList(PrescritDrugIdlist );
        //}

        ///// <summary>
        ///// 得到一个对象实体
        ///// </summary>
        //public ZX.HIS.Model.PrescritDrug GetModel(int PrescritDrugId)
        //{

        //    return dal.GetModel(PrescritDrugId);
        //}

        ///// <summary>
        ///// 得到一个对象实体，从缓存中
        ///// </summary>
        //public ZX.HIS.Model.PrescritDrug GetModelByCache(int PrescritDrugId)
        //{

        //    string CacheKey = "PrescritDrugModel-" + PrescritDrugId;
        //    object objModel = ZX.HIS.Common.DataCache.GetCache(CacheKey);
        //    if (objModel == null)
        //    {
        //        try
        //        {
        //            objModel = dal.GetModel(PrescritDrugId);
        //            if (objModel != null)
        //            {
        //                int ModelCache = ZX.HIS.Common.ConfigHelper.GetConfigInt("ModelCache");
        //                ZX.HIS.Common.DataCache.SetCache(CacheKey, objModel, DateTime.Now.AddMinutes(ModelCache), TimeSpan.Zero);
        //            }
        //        }
        //        catch{}
        //    }
        //    return (ZX.HIS.Model.PrescritDrug)objModel;
        //}

        ///// <summary>
        ///// 获得数据列表
        ///// </summary>
        //public DataSet GetList(string strWhere)
        //{
        //    return dal.GetList(strWhere);
        //}
        ///// <summary>
        ///// 获得前几行数据
        ///// </summary>
        //public DataSet GetList(int Top,string strWhere,string filedOrder)
        //{
        //    return dal.GetList(Top,strWhere,filedOrder);
        //}
        ///// <summary>
        ///// 获得数据列表
        ///// </summary>
        //public List<ZX.HIS.Model.PrescritDrug> GetModelList(string strWhere)
        //{
        //    DataSet ds = dal.GetList(strWhere);
        //    return DataTableToList(ds.Tables[0]);
        //}
        ///// <summary>
        ///// 获得数据列表
        ///// </summary>
        //public List<ZX.HIS.Model.PrescritDrug> DataTableToList(DataTable dt)
        //{
        //    List<ZX.HIS.Model.PrescritDrug> modelList = new List<ZX.HIS.Model.PrescritDrug>();
        //    int rowsCount = dt.Rows.Count;
        //    if (rowsCount > 0)
        //    {
        //        ZX.HIS.Model.PrescritDrug model;
        //        for (int n = 0; n < rowsCount; n++)
        //        {
        //            model = dal.DataRowToModel(dt.Rows[n]);
        //            if (model != null)
        //            {
        //                modelList.Add(model);
        //            }
        //        }
        //    }
        //    return modelList;
        //}

        ///// <summary>
        ///// 获得数据列表
        ///// </summary>
        //public DataSet GetAllList()
        //{
        //    return GetList("");
        //}

        ///// <summary>
        ///// 分页获取数据列表
        ///// </summary>
        //public int GetRecordCount(string strWhere)
        //{
        //    return dal.GetRecordCount(strWhere);
        //}
        ///// <summary>
        ///// 分页获取数据列表
        ///// </summary>
        //public DataSet GetListByPage(string strWhere, string orderby, int startIndex, int endIndex)
        //{
        //    return dal.GetListByPage( strWhere,  orderby,  startIndex,  endIndex);
        //}
        ///// <summary>
        ///// 分页获取数据列表
        ///// </summary>
        ////public DataSet GetList(int PageSize,int PageIndex,string strWhere)
        ////{
        //    //return dal.GetList(PageSize,PageIndex,strWhere);
        ////}

        #endregion  BasicMethod

        #region  ExtensionMethod

        #endregion  ExtensionMethod
    }
}

